home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / program / vdit.arc / gfont.h next >
Text File  |  1988-07-12  |  2KB  |  41 lines

  1. /*
  2.  * Internal representation of GDOS font. Author unknown.
  3.  */
  4.  
  5. typedef struct {
  6.     short    font_id;    /* Font face identifier, 1 -> system font */
  7.     short    size;        /* Font size in points */
  8.     char    name[32];    /* Font name */
  9.     short    first_ade;    /* Lowest ADE value in the face */
  10.     short    last_ade;    /* Highest ADE value in the face */
  11.     short    top;        /* Distance of top line relative to baseline */
  12.     short    ascent;        /* Distance of ascent line relative to baseline */
  13.     short    half;        /* Distance of half line relative to baseline */
  14.     short    descent;    /* Distance of decent line relative to baseline */
  15.     short    bottom;        /* Distance of bottom line relative to baseline */
  16.                 /* All distances are measured in absolute values */
  17.                 /* rather than as offsets. They are always +ve */
  18.     short    max_char_width;    /* Width of the widest character in font */
  19.     short    max_cell_width;    /* Width of the widest cell character cell in face */
  20.     short    loffset;    /* Left Offset see Vdi appendix G */
  21.     short    roffset;    /* Right offset   "      "     " */
  22.     short    thicken;    /* Number of pixels by which to thicken characters */
  23.     short    ul_size;    /* Width in pixels of the underline */
  24.     short    lighten;    /* The mask used to lighten characters */
  25.     short    skew;        /* The mask used to determine when to perform */
  26.             /* additional rotation on the character to perform skewing */
  27.     short    flags;        /* Flags */
  28.                 /*  $01 default system font */
  29.                 /*   02 horiz offset table should be used */
  30.                 /*   04 byte-swap flag (thanks to Motorla idiots) */
  31.                 /*   08 mono spaced font */
  32.     short *    hoff_base;    /* Offset to horizontal offset table */
  33.     short *    coff_base;    /* Offset to character offset table */
  34.         /* font bitmap is byte[width][height], width must be even */
  35.     short *    form_base;    /* Offset to font data */
  36.     short    form_width;    /* Form width (#of bytes/scanline in font data) */
  37.     short    form_height;    /* Form height (#of scanlines in font data) */
  38.     char *    next_font;    /* Pointer to next font in face */
  39. } GFont;
  40.  
  41.